#题1 文件中内容如下，换位为字典并输出
# 1,alex,22,13651054608,IT
# 2,wusir,23,13304320533,Tearcher
# 3,taibai,18,1333235322,IT
"""
# 将文件内容去出，脱换行，切，之后放入列表中
lst1, lst2, lst3 = [], [], []
with open("hello-file", 'r', encoding='utf-8') as f:
    lst = f.readlines()
    lst1, lst2, lst3 = lst[0].strip().split(','), \
                       lst[1].strip().split(','), \
                       lst[2].strip().split(',')
# 将列表中的元素放入字典中
dic = dict.fromkeys(['id', 'name', 'age', 'phone', 'job'], '0')
dic1 = dict.fromkeys(['id', 'name', 'age', 'phone', 'job'], '0')
dic2 = dict.fromkeys(['id', 'name', 'age', 'phone', 'job'], '0')
j = 0
for i in dic:
    dic[i] = lst1[j]
    j += 1
j = 0
for i in dic1:
    dic1[i] = lst2[j]
    j += 1
j = 0
for i in dic2:
    dic2[i] = lst3[j]
    j += 1
print(dic)
print(dic1)
print(dic2)

"""

#题2 有如下车牌和车辆归属地,形成一个新的字典,显示每个归属地的车辆共有多少
cars = ['鲁A32444', '鲁A12333', '湘B8989M', '⿊A49678',\
        '⿊B46555', '沪B25044', '冀A11111', "京A01101"]
locals = {'冀':{"A":"石家庄","B":"唐山"},
          '⿊':{"A":"哈尔滨","B":"齐齐哈尔"},
          '鲁':{"A":"济南","B":"青岛"},
          '鄂':{"A":"武汉","B":"黄石"},
          '湘':{"A":"长沙","B":"株洲"},
          }
"""
# 新建字典
dic ={}
# 循环cars，元素第一个元素【0】在不在locals中，存在，在dic中取locals【元素【0】】的值
# 如存在返回值并加一，不存在返回0加一
for i in cars:
    if i[0] in locals:
        key = locals[i[0]][i[1]]
        dic[key] = dic.get(key, 0)+1
print(dic)
"""


# 题3 userinfo.txt 文件中存放以下结构:
# alex:alex3714
# wusir:123456
# meet:meet123
# 让用户选择:
# 1.注册
# 2.登录
# 2.用户选择注册就将账号和密码添加到userinfo.txt中,如果用户名存在就提示用户名存在,不存在就进行添加(2分)
# 3.用户选择登录,就验证用户的账号和密码是否与userinfo.txt一致,如果一致终止循环提示登录成功(3分)
# 4.让用户登录三次,三次错误将用户进行锁定提示用户名已锁定,并打印错误次数(使用字符串格式化)(3分)
"""
choose = input("输入1为注册，输入2为登录:")
if choose == '1':
    # 注册
    #读出文件内容，
    lst = []
    with open('userinfo.txt', 'r', encoding='utf-8') as f:
        for i in f:
            lst += i.strip().split(':')
        # 将列表转换为字典，跟便于判断用户名是否存在
    dic = {}
    for i in range(0, len(lst), 2):
        dic[lst[i]] = lst[i + 1]
    # 出入用户信息
    username = input('请输入用户名：')
    # 判断用户名石否存在
    while True:
        if username in dic:
            username = input('用户名已存在，请重新输入用户名：')
        else:break
    password = input('请输入密码：')
    # 将用户信息写入文件
    with open('userinfo.txt', 'a', encoding='utf-8') as f:
        f.write('\n' + username + ':' + password)
    print('注册成功！')
else:
    # 登录
    # 读出文件内容，
    lst = []
    with open('userinfo.txt', 'r', encoding='utf-8') as f:
        for i in f:
            lst += i.strip().split(':')
        # 将列表转换为字典，跟便于判断用户名是否存在
    dic = {}
    for i in range(0, len(lst), 2):
        dic[lst[i]] = lst[i + 1]
    # 出入用户信息
    username = input('请输入用户名：')
    password = input('请输入密码：')
    # 判断用户名石否存在
    count = 1
    while count < 3:
        if username in dic and dic[username] == password:
            print('登录成功！')
            break
        else:
            print('用户名或密码错误，请重新输入')
            username = input('请输入用户名：')
            password = input('请输入密码：')
            count += 1
    else:
        print(f'连续错误{count}次，用户名将锁定')
"""
